GoXam for WPF v3
GraphLinksModel<NodeType,NodeKey,PortKey,LinkType> Class Members
Properties  Methods  Events


Northwoods.GoXam.Model Namespace : GraphLinksModel<NodeType,NodeKey,PortKey,LinkType> Class

The following tables list the members exposed by GraphLinksModel<NodeType,NodeKey,PortKey,LinkType>.

Public Constructors
 NameDescription
Public Constructor The default constructor produces an empty model.  
Top
Public Properties
 NameDescription
Public Property Gets or sets the format of this model's data. (Inherited from Northwoods.GoXam.Model.DiagramModel)
Public Property Gets or sets a property path that that specifies how to get the key for "container" or group node data of a node data object.  
Public Property Gets or sets a flag that enables or disables support for undo and redo. (Inherited from Northwoods.GoXam.Model.DiagramModel)
Public PropertyThis property is true during a call to ChangeModel, indicating a change happening due to an undo or a redo. (Inherited from Northwoods.GoXam.Model.DiagramModel)
Public PropertyThis property is true after a StartTransaction and before a corresponding CommitTransaction or RollbackTransaction. (Inherited from Northwoods.GoXam.Model.DiagramModel)
Public Property Gets or sets whether this model is considered changed from an earlier state. (Inherited from Northwoods.GoXam.Model.DiagramModel)
Public Property Gets or sets a property path that that specifies how to find the category of a link data.  
Public Property Gets or sets a property path that that specifies how to get optional "port" parameter information for the "from" node data of a link data object.  
Public Property Gets or sets a property path that that specifies how to get the key for the "from" node data of a link data object.  
Public Property Gets or sets a property path that that specifies how to get the key for the "label" node data of a link data object.  
Public Property Gets or sets the collection of link data items for the model.  
Public Property Gets or sets a property path that that specifies how to get optional "port" parameter information for the "to" node data of a link data object.  
Public Property Gets or sets a property path that that specifies how to get the key for the "to" node data of a link data object.  
Public Property Gets or sets a property path that that specifies how to get a list of keys for the "member" nodes of a group node data object.  
Public Property Gets or sets whether various model-changing methods are enabled. (Inherited from Northwoods.GoXam.Model.DiagramModel)
Public Property A name for this model. (Inherited from Northwoods.GoXam.Model.DiagramModel)
Public Property Gets or sets a property path that that specifies how to find the category of a node data.  
Public Property Gets or sets a property path that that specifies how to find out whether a node data is also a "container" group.  
Public Property Gets or sets a property path that that specifies how to find out whether a node data is also a "label" for a link data.  
Public Property Gets or sets whether all node data are also their own keys.  
Public Property Gets or sets a property path that that specifies how to get the key for node data.  
Public PropertyGets or sets whether a NodeKey reference, when NodeKeyIsNodeData is true, automatically inserts the node into NodesSource.  
Public Property Gets or sets the collection of node data items for the model.  
Public PropertyGets or sets a flag that tells OnChanged whether it should notify any UndoManager that a change has occurred. (Inherited from Northwoods.GoXam.Model.DiagramModel)
Public PropertyGets or sets the UndoManager for this model. (Inherited from Northwoods.GoXam.Model.DiagramModel)
Public Property Specify what kinds of graphs this model allows.  
Public Property Gets or sets whether each link data must have both ends refer to node data.  
Top
Protected Properties
 NameDescription
Protected Property Gets or sets whether the model is being constructed or re-constructed. (Inherited from Northwoods.GoXam.Model.DiagramModel)
Top
Public Methods
 NameDescription
Public Method  
Public MethodOverloaded. Add a link data to LinksSource.  
Public Method Add a copy of a link data to this model.  
Public Method Add a "member" node data's key value to a node data's list of "members".  
Public MethodAdd a node data to NodesSource.  
Public Method Add a copy of a node data to this model.  
Public Method This is called during an Undo or a Redo to actually make state changes to this model or to this model's data. (Inherited from Northwoods.GoXam.Model.DiagramModel)
Public Method Forget all unresolved delayed or forward references.  
Public Method Call the UndoManager's CommitTransaction method. (Inherited from Northwoods.GoXam.Model.DiagramModel)
Public MethodCreate an ICopyDictionary initialized for this model.  
Public MethodCreate an empty IDataCollection for this model.  
Public Method  
Public Method This should be called when a node data's membership in a group may have changed.  
Public MethodThis should be called when a link data object is added to the LinksSource collection.  
Public Method This should be called when a link data's category value may have changed.  
Public Method This should be called when a link data's label node may have changed.  
Public Method This should be called when a link data's connected node or port, either "from" or "to", may have changed.  
Public MethodThis should be called when a link data object is removed from the LinksSource collection.  
Public Method This should be called when a "member" node data key has been added to the collection of "member" node keys.  
Public Method This should be called when a "member" node data key has been removed from the collection of "member" node keys.  
Public Method This should be called when a node data's list of "member" nodes has been replaced.  
Public MethodThis should be called when a node data object is added to the NodesSource collection.  
Public Method This should be called when a node data's category value may have changed.  
Public Method This should be called when a node data's key value may have changed.  
Public MethodThis should be called when a node data object is removed from the NodesSource collection.  
Public Method Given a key, find the node data with that key.  
Public Method This method gets the category of a link.  
Public Method This method gets the category of a node.  
Public MethodOverloaded.  Return a sequence of node data that are directly connected to a given node, in either direction.  
Public Method Return a sequence of link data that are connnected at a given node data, only going into the given node.  
Public Method Return the "from" node data at which a link data is connected.  
Public MethodOverloaded.  Return a sequence of node data that are directly connected by links going into a given node.  
Public Method Return additional "port" information for the "from" end of a link data.  
Public Method Return a container node data for a given link data, if the link belongs to a group.  
Public Method Return the container group node data for a given node data, if there is one.  
Public Method This predicate is true for a node data if it is associated with a link data as its "label".  
Public Method This predicate is true if the given link data has a "label" node.  
Public Method This predicate is true if a given node data may be a group (i.e. a container) of other nodes.  
Public Method This predicate is true if the given node data may be used as a "label" for a link.  
Public Method Get the link data that refers to a given node data as its "label".  
Public Method Get the "label" node data for a link data, if any.  
Public Method Return a sequence of all link data that go from one node to another, possibly restricted to certain "ports".  
Public MethodOverloaded.  Return a sequence of link data that are connnected at a given node data, in either direction.  
Public Method Return a sequence of link data that are contained by a given node data.  
Public Method Return a sequence of node data that are immediate members of a given node data.  
Public MethodReturn the NodeType.  
Public Method Return a sequence of link data that are connnected at a given node data, only coming out of the given node.  
Public Method Return the "to" node data at which a link data is connected.  
Public MethodOverloaded.  Return a sequence of node data that are directly connected by links coming out from a given node.  
Public Method Return additional "port" information for the "to" end of a link data.  
Public Method This predicate is true if the argument is a link data in this model.  
Public Method This predicate is true if there is a link from one node data/port to another one.  
Public MethodReturn the LinkType.  
Public Method This predicate is true if adding a link between two nodes/ports would result in a valid graph.  
Public MethodThis predicate is true if the membernodedata is a member of the groupnodedata container group.  
Public MethodThis predicate is true if adding membernodedata to a group node (groupnodedata) would result in an invalid graph.  
Public Method This predicate is true if the argument is a node data in this model.  
Public MethodThis predicate is true when the argument is an instance of NodeType.  
Public Method This predicate is true if replacing a link between two nodes/ports would result in a valid graph.  
Public MethodOverloaded. Given a Linq for XML XContainer holding node and link data, replace this model's NodesSource and LinksSource collections with collections of new node data and new link data.  
Public MethodRaise a Changed event, given a ModelChangedEventArgs. (Inherited from Northwoods.GoXam.Model.DiagramModel)
Public MethodOverloaded. Raise a Changed event, given before and after values for a particular property. (Inherited from Northwoods.GoXam.Model.DiagramModel)
Public MethodOverloaded. Remove a link data from LinksSource.  
Public Method Remove a child node data's key value from a group node data's list of "member" key values.  
Public MethodRemove a node data from NodesSource.  
Public MethodCause ResolveNodeKey to be called on each known delayed or forward node reference.  
Public Method Call the UndoManager's RollbackTransaction method. (Inherited from Northwoods.GoXam.Model.DiagramModel)
Public MethodGenerate a Linq for XML XElement holding all of the node and link data.  
Public Method Change a node data so that it refers to a different container group node data, by node key.  
Public Method Change a link data so that it refers to a different "from" node data and associated port information.  
Public Method Change a link data so that it refers to a different "label" node data.  
Public Method Change a link data so that it refers to a different "to" node data and associated port information.  
Public Method Replace a node data's list of "member" key values.  
Public Method Call the UndoManager's StartTransaction method. (Inherited from Northwoods.GoXam.Model.DiagramModel)
Top
Protected Methods
 NameDescription
Protected Method  
Protected Method  
Protected MethodOverridden.  This is called during undo or redo to effect state changes to model data.  
Protected MethodOverridden.  This is called during undo or redo to effect state changes to this model.  
Protected Method This predicate is true if adding a link between two nodes/ports would result in a validly structured graph.  
Protected Method This predicate is true if adding a node to a group node would result in an invalid graph.  
Protected Method  
Protected Method  
Protected Method  
Protected Method  
Protected MethodOverloaded. This method actually implements the removal of a link data from the LinksSource collection.  
Protected MethodThis method actually implements the modification of a node data so that it's collection of children node data does not include a given memberkey.  
Protected MethodThis method actually implements the removal of a node data from the NodesSource collection.  
Protected Method Find the category of a link data.  
Protected Method Find the category of a node data.  
Protected Method Find the "from" node key for a given link data.  
Protected Method Find additional information about the "from" node connection for a given link data.  
Protected Method Find containing group node key for a given node data, if any.  
Protected Method Find whether a node data is a group or container of other nodes.  
Protected Method Find whether a node data is a "label" for a link data.  
Protected Method Find the key for node data.  
Protected Method Find the "label" node key for a given link data, if any.  
Protected Method Find the list of keys of the children nodes for a node data object.  
Protected Method Find the "to" node key for a given link data.  
Protected Method Find additional information about the "to" node connection for a given link data.  
Protected MethodThis is the System.ComponentModel.INotifyPropertyChanged event handler for link data.  
Protected MethodThis is the System.ComponentModel.INotifyPropertyChanged event handler for node data.  
Protected MethodOverloaded. This method actually implements the addition of a link data to the LinksSource collection.  
Protected MethodThis method actually implements the modification of a node data so that it's collection of member node data includes a given memberkey.  
Protected MethodThis method actually implements the addition of a node data to the NodesSource collection.  
Protected MethodThis predicate compares two PortKey values and returns true if they are "equal".  
Protected Method This method is called when a duplicate key has been found.  
Protected MethodThis method actually implements the modification of a node data so that its reference to a containing group node data (if any) is the given groupkey.  
Protected Method This method actually implements the modification of a link data to change the reference to the "from" node data and the link's "from" port information.  
Protected Method This method actually implements the modification of a link data to change the reference to the "label" node data.  
Protected Method This method actually implements the modification of a link data to change the reference to the "to" node data and the link's "to" port information.  
Protected Method This method actually implements the replacement of a group node data's collection of member node keys.  
Protected MethodRaises the Changed event. (Inherited from Northwoods.GoXam.Model.DiagramModel)
Protected MethodReset the fields that should not be shared from a copy created by System.Object.MemberwiseClone. (Inherited from Northwoods.GoXam.Model.DiagramModel)
Protected MethodThis is called repeatedly by ResolveAllReferences, once for each known delayed or forward node reference.  
Top
Public Events
 NameDescription
Public Event The Changed event is raised whenever the model is modified. (Inherited from Northwoods.GoXam.Model.DiagramModel)
Top
See Also

Reference

GraphLinksModel<NodeType,NodeKey,PortKey,LinkType> Class
Northwoods.GoXam.Model Namespace
IDiagramModel Interface